/*     */ package com.iris.egrant.web.struts2.tags;
/*     */ 
/*     */ import com.iris.egrant.app.utils.IrisStringUtils;
/*     */ import java.io.IOException;
/*     */ import javax.servlet.jsp.JspException;
/*     */ import javax.servlet.jsp.tagext.BodyTagSupport;
/*     */ import org.apache.commons.lang.StringUtils;
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ public class IrisStringSubstringTag
/*     */   extends BodyTagSupport
/*     */ {
/*     */   private static final long serialVersionUID = 1L;
/*     */   private String str;
/*     */   private String start;
/*     */   private String end;
/*     */   private boolean dot = false;
/*     */   private boolean wrapDiv = false;
/*     */   
/*     */   public int doStartTag() throws JspException {
/*  30 */     String rst = proc(this.str, this.start, this.end, this.dot);
/*     */     try {
/*  32 */       this.pageContext.getOut().write(rst);
/*  33 */     } catch (IOException e) {}
/*     */ 
/*     */     
/*  36 */     return 0;
/*     */   }
/*     */   
/*     */   private String proc(String code, String start, String end, boolean dot) {
/*  40 */     code = IrisStringUtils.toString(code);
/*  41 */     StringBuffer result = new StringBuffer();
/*  42 */     String str = "";
/*  43 */     if (start == null) {
/*  44 */       start = "0";
/*     */     }
/*  46 */     if (end == null) {
/*  47 */       end = String.valueOf(code.length());
/*     */     }
/*  49 */     if (Integer.valueOf(start).intValue() > Integer.valueOf(end).intValue()) {
/*  50 */       return str;
/*     */     }
/*  52 */     if (dot) {
/*  53 */       if (code.length() > Integer.valueOf(end).intValue()) {
/*  54 */         str = StringUtils.substring(code, Integer.valueOf(start).intValue(), Integer.valueOf(end).intValue()) + "...";
/*     */       } else {
/*  56 */         str = StringUtils.substring(code, Integer.valueOf(start).intValue(), Integer.valueOf(end).intValue());
/*     */       } 
/*     */     } else {
/*  59 */       str = StringUtils.substring(code, Integer.valueOf(start).intValue(), Integer.valueOf(end).intValue());
/*     */     } 
/*     */     
/*  62 */     if (this.wrapDiv) {
/*  63 */       result.append("<div title=\"");
/*  64 */       result.append(code.replaceAll("\"", "&quot;"));
/*  65 */       result.append("\">");
/*  66 */       result.append(str);
/*  67 */       result.append("</div>");
/*     */     } else {
/*  69 */       result.append(str);
/*     */     } 
/*     */     
/*  72 */     return result.toString();
/*     */   }
/*     */   
/*     */   public String getStr() {
/*  76 */     return this.str;
/*     */   }
/*     */   
/*     */   public String getStart() {
/*  80 */     return this.start;
/*     */   }
/*     */   
/*     */   public String getEnd() {
/*  84 */     return this.end;
/*     */   }
/*     */   
/*     */   public void setStr(String str) {
/*  88 */     this.str = str;
/*     */   }
/*     */   
/*     */   public void setStart(String start) {
/*  92 */     this.start = start;
/*     */   }
/*     */   
/*     */   public void setEnd(String end) {
/*  96 */     this.end = end;
/*     */   }
/*     */   
/*     */   public boolean isDot() {
/* 100 */     return this.dot;
/*     */   }
/*     */   
/*     */   public void setDot(boolean dot) {
/* 104 */     this.dot = dot;
/*     */   }
/*     */   
/*     */   public boolean isWrapDiv() {
/* 108 */     return this.wrapDiv;
/*     */   }
/*     */   
/*     */   public void setWrapDiv(boolean wrapDiv) {
/* 112 */     this.wrapDiv = wrapDiv;
/*     */   }
/*     */ }


/* Location:              D:\文件kjt\WEB-INF\lib\egrant-core-2.2.20240205.1659.jar!\com\iris\egrant\web\struts2\tags\IrisStringSubstringTag.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       1.1.3
 */